﻿// 订单统计

// 解析URL
var parameter = window.location.href.split("?")[1];
var parameterList = parameter.split("&");
var username = decodeURIComponent(parameterList[0]);  //用户名
var hospital = decodeURIComponent(parameterList[1]);  //医院
var type = decodeURIComponent(parameterList[2]);  //类型
var timefrom = decodeURIComponent(parameterList[3]);  //开始时间
var timeto = decodeURIComponent(parameterList[4]);  //结束时间
var pageNo  = decodeURIComponent(parameterList[5]);  //页码
var pageSize = decodeURIComponent(parameterList[6]);  //每页显示数据数目
console.log(parameterList);
$("#hospital").val(hospital);
$("#type").val(type);
$("#timefrom").val(timefrom);
$("#timeto").val(timeto);
$("#pageSize").val(pageSize+"条/页");

// 获取本地时间
var myDate = new Date();
var year=myDate.getFullYear();
var month=myDate.getMonth()+1;
var date=myDate.getDate();
var nowTime = year + "-" + month + "-" + date;
//起始时间为空，结束时间不为空
if(timefrom == ""){
    console.log("起始时间为空，根据结束时间往前搜索三个月记录");
    timefrom = time_format(addDate(timeto,-3));
    // console.log(timefrom);
    // console.log(timeto);
    $("#timefrom").val(timefrom);
}
//结束时间为空，起始时间不为空
else if(timeto == ""){
    console.log("结束时间为空，根据开始时间往后搜索三个月记录");
    timeto = time_format(addDate(timefrom,3));
    // 比较timeto和nowTime大小，如果timeto大于nowTime，赋值
    if(new Date(timeto.replace("-", "/").replace("-", "/")) >= new Date(time_format(nowTime).replace("-", "/").replace("-", "/"))){
        timeto = time_format(nowTime);
    }
    // console.log(timefrom);
    // console.log(timeto);
    $("#timeto").val(timeto);
}
else{
    // console.log("两个时间都不为空，起始时间必须小于结束时间");
    if(new Date(timefrom.replace("-", "/").replace("-", "/")) >= new Date(timeto.replace("-", "/").replace("-", "/"))){
        timefrom = timeto;
    }
    $("#timefrom").val(timefrom);
}

if(timefrom != ""){
    $("#timefrom").parent().mouseover(function () {
        $(this).find(".icon_clear").css('display','block');
    });
    $("#timefrom").parent().mouseout(function () {
        $(this).find(".icon_clear").css('display','none');
    });
}
if(timeto != ""){
    $("#timeto").parent().mouseover(function () {
        $(this).find(".icon_clear").css('display','block');
    });
    $("#timeto").parent().mouseout(function () {
        $(this).find(".icon_clear").css('display','none');
    });
}

// 保留两位小数
function intToFloat(val) {
    return new Number(val).toFixed(2);
}

// 时间加减函数
function addDate(time,month){
    var d = new Date(time);
    var m = d.getMonth() + 1;
    d.setMonth(m + month);
    return d.getFullYear() + '-' + d.getMonth() + '-' + d.getDate();
}

// 时间处理函数（补0）
function time_format(time){
    var timeList = time.split("-");
    var year = timeList[0];  //年
    var month = timeList[1];  //月
    var day = timeList[2];  //日
    if(month<10){
        month = "0"+month
    }
    if(day<10){
        day = "0"+day
    }
    time = year+"-"+month+"-"+day;
    return time;
}

// 日历插件
$('#calendarfrom').calendar({
    width: 200,
    height: 200,
    trigger: '#timefrom',
    zIndex: 999,
    format: 'yyyy-mm-dd',
    onSelected: function (view, date, data) {
        // 点击时触发
        // console.log('event: onSelected')
    },
    onClose: function (view, date, data) {
        // 点击后触发
        // console.log('event: onClose');
        timefrom = time_format($("#timefrom").val());
        $("#timefrom").val(timefrom);
        refresh();
    }
});
$('#calendarto').calendar({
    width: 200,
    height: 200,
    trigger: '#timeto',
    zIndex: 999,
    format: 'yyyy-mm-dd',
    onSelected: function (view, date, data) {
        // console.log('event: onSelected');
    },
    onClose: function (view, date, data) {
        // console.log('event: onClose');
        timeto = time_format($("#timeto").val());
        $("#timeto").val(timeto);
        refresh();
    }
});

var type_no;
if(type == "全部"){
    type_no = 0;
}
if(type == "到店自取"){
    type_no = 1;
}
if(type == "在线配送") {
    type_no = 2;
}

// 查询订单总数、已完成订单数量、订单总金额、药品总金额、快递总金额
$.ajax({
    type: "post",
    url: "/ysfwpt/selectOrderAmountAndMoney",
    data: {
        type: type_no,
        timefrom: timefrom,
        timeto: timeto
    },
    success: function (data) {
        // console.log(data.map);
        // console.log(data.map2);
        if(type_no == 0){
            $("#order_total").html(data.map1.total + data.map2.total);
            $("#order_complete").html(data.map1.total_com + data.map2.total_com);
            $("#order_complete_money").html( intToFloat(data.map1.total_com_money + data.map2.total_com_money));
            $("#order_complete_drug_money").html( intToFloat((data.map1.total_com_money - data.map1.total_com_express) + (data.map2.total_com_money - data.map2.total_com_express)));
            $("#order_complete_express_money").html( intToFloat(data.map1.total_com_express + data.map2.total_com_express));
        }
        else{
            $("#order_total").html(data.map.total);
            $("#order_complete").html(data.map.total_com);
            $("#order_complete_money").html( intToFloat(data.map.total_com_money));
            $("#order_complete_drug_money").html( intToFloat(data.map.total_com_money - data.map.total_com_express));
            $("#order_complete_express_money").html( intToFloat(data.map.total_com_express));
        }
    },
    error: function (data) {}
});

// 根据订单类别（在线、自取）查询每天订单总数、已完成订单数量、订单总金额、药品总金额、快递总金额
$.ajax({
    type: "post",
    url: "/ysfwpt/selectOrderByDay",
    data: {
        type: type_no,
        timefrom: timefrom,
        timeto: timeto
    },
    success: function (data) {
        console.log(data);
        getOrderList(data);
    },
    error: function (data) {}
});
var getOrderList = function (data) {
    orderList = data.list;
    length = orderList.length;
    start = (pageNo - 1) * pageSize;
    end = pageNo * pageSize;
    pageCount = Math.ceil(length / pageSize);
    if(end >= length){
        end = length;
    }
    // console.log("总条数："+length);
    // console.log("总页数："+pageCount);
    // console.log("当前页数："+pageNo);
    // console.log("一页数目："+pageSize);
    // console.log("显示第"+start+"条到第"+end+"条数据");
    // $("#pageCount").html("第"+pageNo+"页|共"+pageCount+"页");
    $("#pageNo").val(pageNo);
    $("#totalcount").html("当前共"+length+"条记录");
    if(pageNo == 1){
        $("#pre").removeClass("paging").addClass("notAllowed");
    }
    if(pageNo == pageCount){
        $("#next").removeClass("paging").addClass("notAllowed");
    }
    if(length == 0){
        insertEmpty();
    }
    else{
        insertHtml(start,end);
    }
};
var insertEmpty = function () {
    var strhtml = '<tr>';
    strhtml = strhtml + '<td colspan="12">暂无数据</td>';
    $("#orderlist").append(strhtml);
};
var insertHtml = function (start,end) {
    for (var i = start; i < end; i++) {
        var no = parseInt(i)+1;
        var orderinfo = orderList[i];
        var total_com_drug_money = orderinfo.total_com_money - orderinfo.total_com_express;
        var strhtml = '<tr id="' + i + '" arrId="' + i + '">';
        strhtml = strhtml + '<td>' + no + '</td>';
        strhtml = strhtml + '<td>' + orderinfo.time + '</td>';
        strhtml = strhtml + '<td>' + orderinfo.total + '</td>';
        strhtml = strhtml + '<td>' + orderinfo.total_com + '</td>';
        strhtml = strhtml + '<td>' + orderinfo.total_re + '</td>';
        strhtml = strhtml + '<td>¥' + intToFloat(orderinfo.total_com_money) + '</td>';
        strhtml = strhtml + '<td>¥' + intToFloat(total_com_drug_money) + '</td>';
        strhtml = strhtml + '<td>¥' + intToFloat(orderinfo.total_com_express) + '</td>';
        $("#orderlist").append(strhtml);
    }
};

// 设置下拉框宽度（输入框id1，下拉框id2）
var setWidth = function (id1,id2) {
    var width = $("#" + id1).css('width');
    $("#" + id2).css({
        "width": width
    });
};
// 点击搜索框
$("#type").parent().click(function (e){
    // e.stopPropagation(); //阻止冒泡 
    if($("#type_list").is(':visible')){
        $("#type_list").slideUp(300);
        $(this).find(".icon").css("transform","rotate(0deg)");
    }
    else{
        $(".search_input_option").slideUp(300);
        $(".icon").css("transform","rotate(0deg)");
        setWidth("type","type_list div");
        $("#type_list").slideDown(300);
        $(this).find(".icon").css("transform","rotate(180deg)");
        var obj_lis = $("#type_list ul li");
        for(var i = 0;i < obj_lis.length;i ++){
            obj_lis[i].onclick = function () {
                $("#type").val(this.innerHTML);
                $("#type_list").slideUp(300);
                $(this).find(".icon").css("transform","rotate(0deg)");
            }
        }
    }
});
$("#pageSize").click(function (e){
    e.stopPropagation(); //阻止冒泡 
    if($("#pageSize_list").is(':visible')){
        $("#pageSize_list").slideUp(300);
    }
    else{
        $("#pageSize_list").slideDown(300);
        var obj_lis = $("#pageSize_list ul li");
        for(var i = 0;i < obj_lis.length;i ++){
            obj_lis[i].onclick = function () {
                pageSize = this.className;
                pageNo = 1;
                $("#pageSize").val(this.innerHTML);
                $("#pageSize_list").slideUp(300);
                refresh();
            }
        }
    }
});

// 搜索框点击任意选项后进行搜索
var object;
$(document).click(function(e) {
    object = $(e.target).attr("class");
    if(object == "list" || object == "state state_chose"){
        // 提交数据自动进行搜索
        refresh();
    }
});

// 点击×清空输入框，并重新搜索刷新页面
$(".icon_clear").click(function () {
    $(this).parent().find('input').val("");
    refresh();
});

// 点击上一页/下一页
$("#pre").click(function (){
    if(pageNo == 1){
        console.log("首页")
    }
    else{
        pageNo = parseInt(pageNo) - parseInt(1);
        refresh();
    }
});
$("#next").click(function (){
    if(pageNo == pageCount){
        console.log("尾页")
    }
    else{
        pageNo = parseInt(pageNo) + parseInt(1);
        refresh();
    }
});

// 页码跳转输入框失去焦点后跳转页面
$("#pageNo").blur( function(){
    // console.log(pageNo);
    // 页码发生改变
    if(pageNo != $(this).val()){
        // 页码小于最小页码
        if($(this).val() < 1){
            pageNo = 1;
        }
        // 页码大于最大页码
        else if($(this).val() > pageCount){
            pageNo = pageCount;
        }
        else{
            pageNo = $(this).val();
        }
        refresh();
    }
});

var refresh = function () {
    var hospital = $("#hospital").val();
    var type = $("#type").val();
    var timefrom = $("#timefrom").val();
    var timeto = $("#timeto").val();
    //                            用户名            医院         订单类型      开始时间        结束时间         页码          数据数目
    window.location.href = "?" + username + "&" + hospital + "&" + type + "&" +timefrom + "&" + timeto + "&" + pageNo + "&" + pageSize;
};